<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
  <link rel="stylesheet" media="screen" type="text/css" href="./style.css" />
  <link rel="stylesheet" media="screen" type="text/css" href="./design.css" />
  <link rel="stylesheet" media="print" type="text/css" href="./print.css" />

  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<div class="dokuwiki export">

<h3 class="sectionedit1"><a name="gerbv" id="gerbv">Gerbv</a></h3>
<div class="level3">

</div>

<h5><a name="edit_gerbers_using_gerbv" id="edit_gerbers_using_gerbv">Edit Gerbers using gerbv</a></h5>
<div class="level5">

<p>
Gerbv is gEDA&#039;s Gerber file viewer.  However, it has the potential to become more than a viewer – it can become a complete CAM tool, allowing (simple) editing of Gerbers, like moving or deleting tracks, changing drill hole diameters, changing pad or ring diameters, and so on.
</p>

<p>
Difficulty = 4
</p>

</div>

<h5><a name="add_design_rule_checking_drc_functionality_to_gerbv" id="add_design_rule_checking_drc_functionality_to_gerbv">Add Design Rule Checking (DRC) functionality to Gerbv</a></h5>
<div class="level5">

<p>
Most commercial Gerber file viewers allow the user to check if a Gerber
file meets certain layout requirements (like minimum clearances between
traces, etc).  This project would involve implementing DRC capability
into Gerbv, either by importing existing code from PCB, or writing new
code.  This capability should ideally be put into the libgerbv library,
allowing other programs to tap into the DRC capability and allow
scripting support.
</p>

<p>
Difficulty: 5
</p>

</div>

<h5><a name="autodetection_of_footprints_and_footprint_centroid_location" id="autodetection_of_footprints_and_footprint_centroid_location">Autodetection of footprints, and footprint centroid location</a></h5>
<div class="level5">

<p>
This project involves writing code which will allow gerbv to autoidentify footprints via some type of pattern matching (e.g. 2D correlation with known footprints).  Then, gerbv would store the (X, Y) coordinates of each identified footprint&#039;s centroid.  The idea is to produce a pick-place file for automated board stuffing using only the information contained in a set of Gerber files.  This would make a good project for somebody with some AI and/or machine vision background.
</p>

<p>
Difficulty = 5
</p>

</div>

<h5><a name="gerber_to_pcb_file_exporter" id="gerber_to_pcb_file_exporter">Gerber to .pcb file exporter</a></h5>
<div class="level5">

<p>
In this project, the student would implement a feature in which gerbv would read in a gerber, and then export a file which could be read by gEDA/PCB.  The .pcb file generated wouldn&#039;t need to be much more than the individual graphical elements held in the Gerber since a Gerber file doesn&#039;t have the concept of e.g. footprints or text on the silkscreen layer.  However, the ability to create .pcb files would be very useful, since the one could use the full power of PCB when editing legacy Gerbers.
</p>

<p>
Difficulty = 3
</p>

</div>
</div>
</body>
</html>
